/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package py.com.spadons.esmetil.controllers.jsf;

import java.io.IOException;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import py.com.spadons.esmetil.entities.Dato;
import py.com.spadons.esmetil.entities.EstacionDetalle;
import py.com.spadons.esmetil.utils.Util;

/**
 *
 * @author spadons
 */
@ManagedBean
@SessionScoped
public class DatosExport implements Serializable {
    
    @EJB
    private py.com.spadons.esmetil.sessionBeans.DatoFacade datoFacade;
    
    private EstacionDetalle detalleSeleccionado;
    private List<Dato> datos;
    private Date desde;
    private Date hasta;

    public DatosExport() {
    }
    
    @PostConstruct
    public void inicilizar(){ 
        
        desde = Util.getPrimerDiaMes();
        hasta = Util.getUltimoDiaMes();
         
    }

    public List<Dato> getDatos() {
        return datos;
    }

    public void setDatos(List<Dato> datos) {
        this.datos = datos;
    }

    public EstacionDetalle getDetalleSeleccionado() {
        return detalleSeleccionado;
    }

    public void setDetalleSeleccionado(EstacionDetalle detalleSeleccionado) {
        this.detalleSeleccionado = detalleSeleccionado;
    } 

    public Date getDesde() {
        return desde;
    }

    public void setDesde(Date desde) {
        desde.setSeconds(0);
        desde.setMinutes(0);
        desde.setHours(0);
        this.desde = desde;
    }

    public Date getHasta() {
        return hasta;
    }

    public void setHasta(Date hasta) {
        hasta.setSeconds(59);
        hasta.setMinutes(59);
        hasta.setHours(23);
        this.hasta = hasta;
    }
    
    public void cargarDetalle(EstacionDetalle estacionDetalle) throws IOException{
        setDetalleSeleccionado(estacionDetalle);              
        cargarDataTable();
        //Ir a la pagina de DatosExport
        FacesContext.getCurrentInstance().getExternalContext().redirect("/Esmetil/App/WebApp/datos.xhtml");
    }
    
    public void cargarDataTable(){
        datos = datoFacade.findDesdeHasta(detalleSeleccionado, desde, hasta);
    }
}
